package org.example.demo3.demos.web.constants;

/**
 * Redis常量
 *
 * @author wangy
 */
public interface RedisConstant {


    /**
     * 系统缓存dict
     */
    String SYS_CACHE_DICT = "sys:cache:dict";

    /**
     * 系统缓存应用参数
     */
    String SYS_CACHE_APP_PARAM = "sys:cache:appParam";

    /**
     * 系统缓存权限菜单
     */
    String SYS_CACHE_MENU_AUTH = "sys:cache:menuAuth:";

    long REDIS_EXPIRE_TIME_6H = 6 * 60 * 60;

    /**
     * 授信额度、预赋码分布式锁
     */
    String REDIS_SYED_YFM_LOCK_KEY = "sys:lock:syed_yfm:%s";

    /**
     * 官网开票接口分布式锁:%s=业务编码
     */
    String REDIS_OFFICIAL_LOCK_KEY = "sys:lock:official:%s";
    /**
     * 心圆福接口分布式锁：%s=投保单号
     */
    String REDIS_XINYUANGFU_LOCK_KEY = "sys:lock:xinyuanfu:%s";

    /**
     * 纳税人基本信息缓存key
     */
    String REDIS_VMSENTERPRISEINFO_CACHE_KEY = "sys:cache:vmsEnterpriseInfo:%s";

    /**
     * 纳税人风险信息缓存key
     */
    String REDIS_VMSENTERPRISE_RISKINFO_CACHE_KEY = "sys:cache:vmsEnterpriseRiskInfo:%s";

    /**
     * 版式文件缓存key
     */
    String REDIS_FULL_BSWJ_CACHE_KEY = "sys:cache:fullBswj:%s";

    /**
     * 刷新token的key 格式：token:refresh:机构:登录账号:刷新token的uuid
     */
    String REFRESH_TOKEN = "token:refresh:%s:%s:%s";
    /**
     * 老系统过来的token暂存 格式：token:old:机构:登录账号
     */
    String OLD_TOKEN = "token:old:%s:%s";

    /**
     * 发票上传队列
     */
    String QUEUE_INVOICE_UPLOAD = "queue:invoice:upload";

    /**
     * 发票延迟查询上传结果队列
     */
    String QUEUE_INVOICE_DELAY_QUERY_UPLOAD = "queue:invoice:DelayQuery:upload";

    /**
     * 发票上传成功文件生成队列
     */
    String QUEUE_INVOICE_UPLOAD_SUCCESS = "queue:invoice:uploadSuccess";

    /**
     * 发票全量归集队列
     */
    String QUEUE_INVOICE_COLLECT = "queue:invoice:collect";

}
